﻿@model IEnumerable<myFinance.Models.ViewModels.GrupoDespesaViewModel>
@{
	ViewBag.Title = "Grupo de Despesa";
}
<!DOCTYPE html>
<html>
<head>
	<title>Index</title>
	@if (false)
 {
		<script type="text/javascript" src="../../Scripts/jquery-1.6.4-vsdoc.js"></script>
		<script type="text/javascript" src="../../Scripts/jquery.validate-vsdoc.js"></script>
		<script type="text/javascript" src="../../Scripts/jquery.validate.js"></script>
		<script type="text/javascript" src="../../Scripts/numbers.js"></script>
		<script type="text/javascript" src="../../Scripts/script.js"></script>
 }
	<style type="text/css">
		.grid
		{
			min-width: 900px;
			max-width: 900px;
			margin: auto;
		}
		.nome-grupo, .nome-subgrupo
		{
			text-align: left;
			padding-left: 10px;
			min-width: 250px;
		}
		.opcoes
		{
			width: 300px;
			text-align: center;
			padding: 0;
		}
		#novo
		{
			font-size: 1.8em;
			padding: 20px;
		}
		#Grupo
		{
			width: 170px;
			padding: 0 0 0 2px;
		}
		#filtrar
		{
			padding: 0 4px;
			margin-left: 20px;
		}
	</style>
</head>
<body>
	<table class="grid">
		<thead>
			<tr>
				<th colspan="3" id="novo">
					<a href="@Url.Action("CadastroGrupo", "GrupoDespesa")/0?conta=false">Novo grupo de despesas</a> | <a href="@Url.Action("CadastroSubGrupo", "GrupoDespesa")/0?conta=false">
						Novo sub-grupo de despesas</a>
				</th>
			</tr>
			<tr>
				<th colspan="3">
					Filtro por grupo de despesas:
					@Html.DropDownList("Grupo", (IEnumerable<SelectListItem>)ViewBag.Grupo, "Todos")
					<input type="button" value="Filtrar" id="filtrar" />
				</th>
			</tr>
			<tr>
				<th class="nome-grupo">
					Grupo de Despesas
				</th>
				<th class="nome-subgrupo">
					Sub-Grupo de Despesas
				</th>
				<th class="opcoes">
				</th>
			</tr>
		</thead>
		@if (Model.Count() > 0)
  {
			<tbody>
				@foreach (var item in Model)
	{
					<tr>
						<td class="nome-grupo">
							@Html.DisplayFor(modelItem => item.NomeGrupo)
						</td>
						<td class="nome-subgrupo">
							@Html.DisplayFor(modelItem => item.NomeSubGrupo)
						</td>
						<td class="opcoes">
							<a href="@Url.Action("CadastroGrupo", "GrupoDespesa")/@item.IdGrupo?conta=false" class="editar">Editar Grupo</a> | 
							<a href="@Url.Action("CadastroSubGrupo", "GrupoDespesa")/@item.IdSubGrupo?conta=false" class="editar">Editar SubGrupo</a> | 
							<a href="#" class="excluir" onclick="return false;">Excluir Sub-Grupo</a>
						</td>
					</tr>
	}
			</tbody>
  }
  else
  {
			<tbody>
				<tr>
					<td colspan="3">
						&nbsp;Não foram encontrados registros ou ainda não existem sub-grupos de despesa cadastrada.
					</td>
				</tr>
			</tbody>
  }
	</table>
	<script type="text/javascript">
		$(function () {
			loadTable('grid');
			hideLoading();
		});
		$('#filtrar').click(function () {
			showLoading();
			var grupo = $('#Grupo').val() > 0 ? $('#Grupo').val() : 0;
			$.ajax({
				url: '@Url.Action("Filtrar", "GrupoDespesa")',
				type: 'GET',
				dataType: 'json',
				data: { grupo: grupo },
				error: function () {
					alert('Houve um erro na requisição dos dados!\nPor favor, entre em contato com o Administrador do seu sistema.');
					hideLoading();
				},
				success: function (data) {
					var html = "";
					if (data != "" || data != undefined) {
						$('.grid tbody').empty().append(data.tbody);
						hideLoading();
					}
				},
				statusCode: {
					500: function () {
						alert('ERROR TYPE: 500 Internal Server Error\n\nHouve um erro na resposta do servidor.\nPor favor, entre em contato com o Administrador do seu sistema.');
						hideLoading();
					},
					404: function () {
						alert('ERROR TYPE: 404 Not Found\n\nA URL requisitada não existe.\nPor favor, entre em contato com o Administrador do seu sistema.');
						hideLoading();
					}
				}
			});
		});
	</script>
</body>
</html>
